The present invention relates to a computer controlled bar code scanner and a method of scanning and, more particularly, to such scanning apparatus and to such a method in which bar code labels of the type including add-on codes, as well as bar code labels which exclude such add-on codes, may be scanned without the need for operator adjustment of the scanning apparatus.
Numerous types of stationary laser scanners are known in which a beam of laser light is swept in a scan pattern to find and read a bar code printed on a surface which is presented to the scanner, such as for example a package label. Bar code labels are used on a broad range of retail packages for check-out and inventory purposes. A scanner, located for example at the check-out station in a retail establishment, is used by a clerk automatically to enter product identification data into an associated computer system.
Typically such a scanner includes a laser source, such as a gas discharge laser, which produces a low power laser beam. The beam then passes through appropriate optical lenses and is swept across the package surface by a motor-driven, rotating mirror assembly. The package bearing a bar code label is presented manually to the scanner by a clerk. A portion of the light reflected from the package surface returns through the optical lenses to a detector which provides an electrical signal in dependence upon the level of the reflected light. A signal processing system in the scanner then analyses the electrical signal and translates the scanned characters into data which is transmitted to the host computer.
The computer determines the total price of the products being purchased, as well as storing the identity of the purchased products for inventory and accounting purposes. The host computer may be located in the cash register associated with the scanner. Alternatively, a single host computer may service a number of scanners at the retail establishment.
A number of different bar codes have come into use. The more common ones are horizontal in design with alternating vertical dark bars and light spaces therebetween. The height of the bars has no purpose other than to permit a scanning beam to successfully pass over the entire length of the bar code to permit its reading in one scanning pass. Common codes include Code Three of Nine, Two of Five, Codabar, Two of Five Non-Interleaved, Two of Five Interleaved, UPC-A, UPC-E, EAN 13, and EAN 8. Also in use is a two or five character "Add-On" code for UPC and EAN labels. An Add-On code is simply an additional grouping of bars and spaces to one side of the primary bar code which includes additional data to be read by the scanner.
The basic requirement for high volume transaction laser scanners is to operate in a way that the store check-out clerk does not have to worry about the label orientation as the product label is passed over the scanner. The basic function of the scan pattern generating arrangement is to move the beam of laser light through a three dimensional pattern capable of finding and reading labels in as many label orientations as possible.
Since it is desired that the scanning beam sweep across all of the bar of the label in a single pass, bar code labels including an Add-On code present a particularly difficult problem. Such labels have a high aspect ratio, i.e., the ratio of their horizontal dimension to their vertical dimension is particularly large. As a consequence, the variations in orientation of the scan path of the scanning beam of light which will produce a successful read of such labels are more limited than is the case with labels which do not include an Add-On code. If a primary code area was read by a conventional scanner and no Add-On code was read during a scanning pass, this might have resulted from the particular orientation of the bar code label with respect to the scan path. Alternatively, this may also have resulted from reading a bar code label which did not include an Add-On code. Convention scanners have not been able to distinguish between these two situations.
Previously, the approach has been for the clerk operating a scanner to switch the scanner to a special setting when Add-On labels were to be read. In this setting, the scanner would acknowledge a valid "read+ only when the primary code and the Add-On code of a label were both read. When switched to the normal scanner setting, the scanner would read the primary code and ignore the Add-On code as superfluous. As will be appreciated, this process is time consuming and burdensome. Further, the possibility exists for an erroneous reading of a label in the event that the scanner were to be switched to the wrong setting.
Accordingly, there is a need for a scanner and a method of scanning in which bar code labels may be read automatically, whether or not they include an Add-On code.